1/9/2020

<<<<<<< HEAD

Perchรจ le malattie cardiovascolari

=======

Perchรจ le malattie cardivascolari

>>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

  • Principale causa di morbositร , invaliditร  e mortalitร 



  • Incessante attivitร  di ricerca in campo medico



  • Interesse guidato da esperienze personali

Il ruolo del cuore nellโ€™organismo




  • Trasportare sangue ricco di ossigeno


  • Ricevere sangue ricco di anidride carbonica


  • Ossigenare il sangue

I Dati

Heart Disease UCI, dataset a cura di:

  • Hungarian Institute of Cardiology. Budapest: Andras Janosi, M.D.
  • University Hospital, Zurich, Switzerland: William Steinbrunn, M.D.
  • University Hospital, Basel, Switzerland: Matthias Pfisterer, M.D.
  • V.A. Medical Center, Long Beach and Cleveland Clinic Foundation: Robert Detrano, M.D., Ph.D.
<<<<<<< HEAD =======

I Dati

  • Age: etร  del paziente
  • Sex: sesso del paziente
  • CP: tipologia di dolore al petto
  • Trestbps: pressione sanguigna a riposo
  • Chol: valore di colesterolo sierico misurato
  • FBS: livello di zuccheri nel sangue
  • RestECG: risultati di un elettrocardiogramma a riposo
  • THLACH: massima frequenza cardiaca osservata
  • EXAng: dolore anginoso indotto da esercizio

I Dati

  • Oldpeak: misurazione del picco del frammento ST dellโ€™ECG
  • Slope: curvatura del frammento ST dellโ€™ECG
  • CA: diramazioni dei Grandi Vasi colorati dal fluoroscopio a raggi X
  • Thal: indica se il paziente presenta talassemia
  • Target: indica se il paziente รจ affetto o meno da una malattia cardiovascolare

Correlation plot

>>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

Sesso ed etร  dei pazienti

<<<<<<< HEAD =======

  • Qual รจ lโ€™etร  del paziente piรน giovane?
##   Age
## 1  29



  • Qual รจ lโ€™etร  del paziente piรน anziano?
##     Age
## 303  77

>>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

<<<<<<< HEAD =======

>>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

Massimo battito cardiaco misurato

max_heart_rate <- function(age){
  return(220-age)
}

max_heart_rate(30)
## [1] 190
max_heart_rate(50)
## [1] 170

<<<<<<< HEAD =======

Un buon indicatore in una diagnosi?

>>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

Battito cardiaco in relazione ad una malattia cardiaca

Livello di zuccheri nel sangue

  • BS < 100 mg/dL (normale)
  • 100 mg/dl <= BS <= 120 mg/dL (aumento del rischio)
  • <<<<<<< HEAD
  • BS > 120 mg/dL (alto rischio)
  • =======
  • BS > 120 mg/dL (alto rischio)รน
  • >>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa



Il dataset indica, tramite la variabile FastingBloodSugar, lโ€™eventuale superamento del valore di 120 mg/dL.

<<<<<<< HEAD

Livello di zuccheri in relazione ad etร  e sesso

=======

Livello di zuccheri in relazione ad etร  e sesso

Correlazione con la pressione sanguigna

Interpretazione dei valori relativi alla pressione del paziente:

  • 90 - 120: regolare
  • 120 - 140: lievemente alta
  • 140 - 200: eccessivamente alta

>>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

Lโ€™influenza del colesterolo sierico

Che cosโ€™รจ il colesterolo sierico?

Una misura quantitativa di HDLC, LDLC e triglicerici presenti nel sangue
  • Viene calcolato sommando la quantitร  di colesterolo HDL e LDL e aggiungendo il 20% del livello di trigliceridi presenti nel campione di sangue prelevato.
  • Deve essere incluso in un range compreso fra 125 e 200 mg/dL per persone di etร  superiore ai 20 anni

Una possibile motivazione



“I valori di colesterolo sierico, anche se sopra il limite massimo, non sono significativamente correlati con la quantificazione del rischio cardiovascolare. รˆ consigliabile concentrarsi sul miglioramento della frazione HDL, sul potenziamento delle difese immunitarie e sul consumo di antiossidanti”.

<<<<<<< HEAD =======

>>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

Colesterolo in relazione allโ€™etร 

Il dolore al petto come metro diagnostico

Distinzioni

  • Dolore anginoso tipico
  • Dolore anginoso atipico
  • Dolore non anginoso
  • Asintomatico
<<<<<<< HEAD ======= >>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

Distribuzione

<<<<<<< HEAD =======

## # A tibble: 8 x 3
## # Groups:   ChestPain [4]
##   ChestPain       ExerciseAngina count
##   <chr>           <chr>          <int>
## 1 Asymptotic      F                 19
## 2 Asymptotic      T                  4
## 3 Atypical Angina F                 46
## 4 Atypical Angina T                  4
## 5 No Angina       F                 76
## 6 No Angina       T                 11
## 7 Typical Angina  F                 63
## 8 Typical Angina  T                 80

>>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

Angina come segno di malattia cardiaca

Malattia in assenza di dolore anginoso

<<<<<<< HEAD


=======




## # A tibble: 2 x 2
##   ChestPain   count
##   <chr>       <int>
## 1 Asymptotic     16
## 2 Non Anginal    69



>>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

Analisi del tracciato ST

Lettura di un tracciato ECG

Anomalia del tratto ST



Interpretazione dei dati

  • OldPeak - indica la misurazione in mm del segmento ST.


  • PeakSlope - indica la curvatura del segmento ST osservato, questa in particolare puรฒ essere
    • Upsloping (curvatura verso lโ€™alta, indicata dal valore 0)
    • Flat (piatta, indicata dal valore 1)
    • Downsloping (curvatura verso il basso, indicata dal valore 2)


  • RestingECG - indica se il referto elettrocardiografico ha presentato:
    • Un tracciato normale (indicato dal valore 0)
    • Anomalie nel tratto ST (indicato dal valore 1)
    • Segni di ipetrofia sinistro-ventricolare (indicato dal valore 2).

<<<<<<< HEAD

Anomalie del tratto ST

=======

Ipertrofia sinistro ventricolare



## # A tibble: 2 x 3
## # Groups:   HasDisease [2]
##   HasDisease ChestPain count
##   <chr>          <int> <int>
## 1 F                  0     3
## 2 T                  2     1

Correlazione con dolore anginoso

Anomalie del tratto ST

>>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

Correlazione con la presenza di una malattia

Strumento diagnostico efficace




Numero di casi di pazienti sani che hanno dimostrato anomalie nel tracciato ST a riposo:

##   n
## 1 0

<<<<<<< HEAD

Presenza di dolore anginoso

=======

Correlazione con dolore anginoso

>>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

Osservazioni in seguito a cateterismo cardiaco

La procedura


Motivazioni



  • Valutazione o conferma della presenza di patologie cardiovascolari



  • Valutazione della funzionalitร  del muscolo cardiaco



  • Determinazione della necessitร  di ulteriori trattamenti (quali procedure di intervento e/o bypass chirurgici)

I Dati


  • Variabile MajorVessels, in riferimento al numero di diramazioni dei Grandi Vasi colorate dal fluoroscopio.



Con “Grandi Vasi”, ci si riferisce a:

  • Vena Cava superiore e inferiore
  • Vene polmonari
  • Arterie Polmonari
  • Aorta

Nei pazienti malati

<<<<<<< HEAD =======

Confronto con i pazienti sani

>>>>>>> e0b36ebb675e07007be61ca1d7719eb9f6b1a1fa

Dolore anginoso in seguito alla mancanza di ossigenazione

Previsione di una malattia cardiovascolare

Impiego di un regressione logistico

set.seed(1996)

# Sostituzione dei valori 1 e 0 riferiti a presenza e assenza di malattia cardiaca con "true" e "false"
model <- heart_original %>%
  mutate(HasDisease = as.character(HasDisease)) %>%
  mutate(HasDisease = fct_recode(HasDisease, true = '1', false = '0'))

# Partizionamento del dataset in funzione del test del modello risultante
training_slice <- createDataPartition(model$HasDisease, p = 0.80, list = FALSE)
training <- model[training_slice,]
testing <- model[-training_slice,]


# Regressione Logistica
trControl <- trainControl(summaryFunction = twoClassSummary,
                          classProbs = TRUE)
logistic_regressor <- train(HasDisease ~ ., data = training, method = 'glm', 
                            family = binomial(link = 'logit'), trControl = trControl)

Test dellโ€™accuratezza

predictions <- predict(logistic_regressor, newdata = testing, type = 'prob')
comparation <- data.frame(actual = testing$HasDisease,
                         predicted = predictions$true)

confusionMatrix(data = cut(predictions$true, 
                           breaks = c(-Inf, 0.5, Inf), 
                           labels = c('false', 'true')),
                reference = testing$HasDisease,
                positive = 'true', mode = 'everything')
## Confusion Matrix and Statistics
## 
##           Reference
## Prediction false true
##      false    23    8
##      true      4   25
##                                           
##                Accuracy : 0.8             
##                  95% CI : (0.6767, 0.8922)
##     No Information Rate : 0.55            
##     P-Value [Acc > NIR] : 4.67e-05        
##                                           
##                   Kappa : 0.6013          
##                                           
##  Mcnemar's Test P-Value : 0.3865          
##                                           
##             Sensitivity : 0.7576          
##             Specificity : 0.8519          
##          Pos Pred Value : 0.8621          
##          Neg Pred Value : 0.7419          
##               Precision : 0.8621          
##                  Recall : 0.7576          
##                      F1 : 0.8065          
##              Prevalence : 0.5500          
##          Detection Rate : 0.4167          
##    Detection Prevalence : 0.4833          
##       Balanced Accuracy : 0.8047          
##                                           
##        'Positive' Class : true            
## 

Conclusioni

“La medicina รจ un miscuglio di scienza, saggezza e tecnologia.”

Robert W. Platt